package guowei.common.exception;

import lombok.Data;

/**
 * 错误码和错误信息定义类
 *  1.错误码定义规则为5为数字
 *  2.前两位表示业务场景，最后三位表示错误码。例如:100001。
 *      10:通用001:系统未知常
 *  3.维护错误码后需要维护错误描述，将他们定义为枚举形式错误码列表:
 * 10: 通用
 *      001:参数格式校验
 *      002:验证码发送频率

 * 11:商品
 * 12:订单
 * 13:购物车
 * 14:物流
 * 15:用户
 *     001:用户名不唯一
 *     002:手机号不唯一
 *     003:用户名或手机号或密码错误
 * 16：库存
 *     001：库存不足
 */
public enum BizCodeEnume {
    VALID_EXCEPTION(10001,"参数格式校验失败"),
    UNKNOWN_EXCEPTION(10000,"系统未知异常"),
    SMS_PARAM_EXCEPTION(10002,"验证码发送频率太高"),

    USERNAMENOTONLY_EXCEPTION(15001,"用户名已经注册"),

    PHONENOTONLY_EXCEPTION(15002,"手机号已经注册"),

    EUPNAME_PHONE_PASSWORD_EXCEPTION(15003,"用户名或手机号或密码错误"),

    WARE_NOT_ENOUGH(16001,"该商品库存不足");

    private int code;
    private String msg;

    BizCodeEnume(int code, String msg) {
        this.code = code;
        this.msg = msg;
    }

    public int getCode() {
        return code;
    }

    public String getMsg() {
        return msg;
    }

    BizCodeEnume() {
    }
}
